CosyOS-III API 用户参考手册
1.0.2
首页
模块
文件
文件列表
全局定义
E:
Keil Projects
book
ur_eapi.h
浏览该文件的文档.
1
/**************************************************************************/
12
#ifndef __UR_EAPI_H
13
#define __UR_EAPI_H
14
15
16
17
/* 清除就绪延时 */
18
#define iClearDelay sPSV_ClearDelay
19
#define pClearDelay sPS2_ClearDelay
20
21
/* 恢复任务 */
22
#define tResumeTask(task) sTSV_ResumeTask(u_taskhandle_##task)
23
#define iResumeTask(task) sPSV_ResumeTask(u_taskhandle_##task)
24
#define pResumeTask(task) sPS2_ResumeTask(u_taskhandle_##task)
25
26
/* 挂起任务 */
27
#define tSuspendTask(task) sTSV_SuspendTask(u_taskhandle_##task)
28
#define iSuspendTask(task) sPSV_SuspendTask(u_taskhandle_##task)
29
#define pSuspendTask(task) sPS2_SuspendTask(u_taskhandle_##task)
30
31
/* 删除任务 */
32
#define tDeleteTask(task) sTSV_DeleteTask(u_taskhandle_##task)
33
#define iDeleteTask(task) sPSV_DeleteTask(u_taskhandle_##task)
34
#define pDeleteTask(task) sPS2_DeleteTask(u_taskhandle_##task)
35
36
/* 设置任务优先级 */
37
#define tSetTaskPri(task, npri) sTSV_SetTaskPri(u_taskhandle_##task, npri)
38
#define iSetTaskPri(task, npri) sPSV_SetTaskPri(u_taskhandle_##task, npri)
39
#define pSetTaskPri(task, npri) sPS2_SetTaskPri(u_taskhandle_##task, npri)
40
41
/* 清除阻塞(状态)*/
42
#define tClearBlock(task) sTSV_ClearBlock(u_taskhandle_##task)
43
#define iClearBlock(task) sPSV_ClearBlock(u_taskhandle_##task)
44
#define pClearBlock(task) sPS2_ClearBlock(u_taskhandle_##task)
45
46
/* 设置阻塞-滴答周期 */
47
#define tSetBlock_tc(task, tc) sTSV_SetBlock(u_taskhandle_##task, tc)
48
#define iSetBlock_tc(task, tc) sPSV_SetBlock(u_taskhandle_##task, tc)
49
#define pSetBlock_tc(task, tc) sPS2_SetBlock(u_taskhandle_##task, tc)
50
51
/* 设置阻塞-毫秒 */
52
#define tSetBlock_ms(task, ms) tSetBlock_tc(task, (1000UL * (ms)) / SYSCFG_SYSTICKCYCLE)
53
#define iSetBlock_ms(task, ms) iSetBlock_tc(task, (1000UL * (ms)) / SYSCFG_SYSTICKCYCLE)
54
#define pSetBlock_ms(task, ms) pSetBlock_tc(task, (1000UL * (ms)) / SYSCFG_SYSTICKCYCLE)
55
56
/* 设置阻塞-秒钟 */
57
#define tSetBlock_s(task, s) tSetBlock_ms(task, 1000UL * (s))
58
#define iSetBlock_s(task, s) iSetBlock_ms(task, 1000UL * (s))
59
#define pSetBlock_s(task, s) pSetBlock_ms(task, 1000UL * (s))
60
61
/* 设置阻塞-分钟 */
62
#define tSetBlock_m(task, m) tSetBlock_s(task, 60UL * (m))
63
#define iSetBlock_m(task, m) iSetBlock_s(task, 60UL * (m))
64
#define pSetBlock_m(task, m) pSetBlock_s(task, 60UL * (m))
65
66
/* 设置阻塞-小时 */
67
#define tSetBlock_h(task, h) tSetBlock_m(task, 60UL * (h))
68
#define iSetBlock_h(task, h) iSetBlock_m(task, 60UL * (h))
69
#define pSetBlock_h(task, h) pSetBlock_m(task, 60UL * (h))
70
71
/* 定时中断-滴答周期 */
72
#define tTimInt_tc(tmid, tc) sTSV_TimInt(tmid, tc)
73
#define iTimInt_tc(tmid, tc) sPSV_TimInt(tmid, tc)
74
75
/* 定时中断-毫秒 */
76
#define tTimInt_ms(tmid, ms) tTimInt_tc(tmid, (1000UL * (ms)) / SYSCFG_SYSTICKCYCLE)
77
#define iTimInt_ms(tmid, ms) iTimInt_tc(tmid, (1000UL * (ms)) / SYSCFG_SYSTICKCYCLE)
78
79
/* 定时中断-秒钟 */
80
#define tTimInt_s(tmid, s) tTimInt_ms(tmid, 1000UL * (s))
81
#define iTimInt_s(tmid, s) iTimInt_ms(tmid, 1000UL * (s))
82
83
/* 定时中断-分钟 */
84
#define tTimInt_m(tmid, m) tTimInt_s(tmid, 60UL * (m))
85
#define iTimInt_m(tmid, m) iTimInt_s(tmid, 60UL * (m))
86
87
/* 定时中断-小时 */
88
#define tTimInt_h(tmid, h) tTimInt_m(tmid, 60UL * (h))
89
#define iTimInt_h(tmid, h) iTimInt_m(tmid, 60UL * (h))
90
91
/* 终止定时中断 */
92
#define tTimInt_Cancel(tmid) tTimInt_tc(tmid, 0)
93
#define iTimInt_Cancel(tmid) iTimInt_tc(tmid, 0)
94
95
/* 定时查询-滴答周期 */
96
#define tTimQry_tc(tmid, tc) sTSV_TimQry(tmid, tc)
97
#define iTimQry_tc(tmid, tc) sPSV_TimQry(tmid, tc)
98
99
/* 定时查询-毫秒 */
100
#define tTimQry_ms(tmid, ms) tTimQry_tc(tmid, (1000UL * (ms)) / SYSCFG_SYSTICKCYCLE)
101
#define iTimQry_ms(tmid, ms) iTimQry_tc(tmid, (1000UL * (ms)) / SYSCFG_SYSTICKCYCLE)
102
103
/* 定时查询-秒钟 */
104
#define tTimQry_s(tmid, s) tTimQry_ms(tmid, 1000UL * (s))
105
#define iTimQry_s(tmid, s) iTimQry_ms(tmid, 1000UL * (s))
106
107
/* 定时查询-分钟 */
108
#define tTimQry_m(tmid, m) tTimQry_s(tmid, 60UL * (m))
109
#define iTimQry_m(tmid, m) iTimQry_s(tmid, 60UL * (m))
110
111
/* 定时查询-小时 */
112
#define tTimQry_h(tmid, h) tTimQry_m(tmid, 60UL * (h))
113
#define iTimQry_h(tmid, h) iTimQry_m(tmid, 60UL * (h))
114
115
/* 终止定时查询 */
116
#define tTimQry_Cancel(tmid) tTimQry_tc(tmid, ~0)
117
#define iTimQry_Cancel(tmid) iTimQry_tc(tmid, ~0)
118
119
/* 上锁二值信号量 */
120
#define tLockBin(bin) bin.binary = false
121
#define iLockBin(bin) sPSV_WriteBin(bin, false)
122
#define pLockBin(bin) sPS2_WriteBin(bin, false)
123
124
/* 给予二值信号量 */
125
#define tGiveBin(bin) sTSV_GiveBin(bin)
126
#define iGiveBin(bin) sPSV_WriteBin(bin, true)
127
#define pGiveBin(bin) sPS2_WriteBin(bin, true)
128
129
/* 获取二值信号量 */
130
#define tTakeBin(bin) sTSV_TakeBin(bin)
131
#define iTakeBin(bin) sISV_TakeBin(bin)
132
133
/* 归还二值信号量 */
134
#define tBackBin(bin) bin.binary = true
135
#define iBackBin(bin) bin.binary = true
136
137
/* 给予计数信号量 */
138
#define tGiveSem(sem) sTSV_GiveSem(sem)
139
#define iGiveSem(sem) sPSV_GiveSem(sem)
140
141
/* 获取计数信号量 */
142
#define tTakeSem(sem) sTSV_TakeSem(sem)
143
144
/* 归还计数信号量 */
145
#define tBackSem(sem) tGiveSem(sem)
146
147
/* 接收飞信 */
148
#define tRecvFetion(tbox) sTSV_RecvFetion(tbox)
149
#define iRecvFetion(tbox) sISV_RecvFetion(tbox)
150
151
/* 发送飞信 */
152
#define tSendFetion(tbox, tion) sTSV_SendFetion(tbox, tion)
153
#define iSendFetion(tbox, tion) sPSV_SendFetion(tbox, tion)
154
155
/* 接收邮件 */
156
#define tRecvMail(mbox) sTSV_RecvMail(mbox)
157
#define iRecvMail(mbox) sISV_RecvMail(mbox)
158
159
/* 发送邮件 */
160
#define tSendMail(mbox, mail) sTSV_SendMail(mbox, mail)
161
#define iSendMail(mbox, mail) sPSV_SendMail(mbox, mail)
162
163
/* 接收消息 */
164
#define tRecvMsg(que) sTSV_RecvMsg(que)
165
#define iRecvMsg(que) sISV_RecvMsg(que)
166
167
/* 发送消息 */
168
#define tSendMsg(que, msg) sTSV_SendMsg(que, msg)
169
#define iSendMsg(que, msg) sPSV_SendMsg(que, msg)
170
171
/* 查询标志组 */
172
#define tQueryFlagGroup(group) sTSV_QueryFlagGroup(group)
173
#define iQueryFlagGroup(group) sISV_QueryFlagGroup(group)
174
175
/* 清除标志组 */
176
#define tClearFlagGroup(group) sTSV_ClearFlagGroup(group)
177
#define iClearFlagGroup(group) sPSV_ClearFlagGroup(group)
178
179
/* 设置标志位 */
180
#define tSetFlagBit(group, bit) tSetFlagBits(group, 1) bit)
181
#define iSetFlagBit(group, bit) iSetFlagBits(group, 1) bit)
182
183
/* 清除标志位 */
184
#define tClearFlagBit(group, bit) tClearFlagBits(group, 1) bit)
185
#define iClearFlagBit(group, bit) iClearFlagBits(group, 1) bit)
186
187
/* 设置多标志位 */
188
#define tSetFlagBits(group, nbit) sTSV_WriteFlagBits(group, true, nbit)
189
#define iSetFlagBits(group, nbit) sPSV_WriteFlagBits(group, +, nbit)
190
191
/* 清除多标志位 */
192
#define tClearFlagBits(group, nbit) sTSV_WriteFlagBits(group, false, nbit)
193
#define iClearFlagBits(group, nbit) sPSV_WriteFlagBits(group, -, nbit)
194
195
/* 获取时间 */
196
#define tGetTime(t) sTSV_GetTime(t)
197
#define iGetTime(t) sISV_GetTime(t)
198
199
/* 设置时间 */
200
#define tSetTime(t) sTSV_SetTime(t)
201
#define iSetTime(t) sPSV_SetTime(t)
202
203
/* 别名定义(API简化)*/
204
#define uRecvFet uRecvFetion
205
#define tRecvFet tRecvFetion
206
#define iRecvFet iRecvFetion
207
#define uSendFet uSendFetion
208
#define tSendFet tSendFetion
209
#define iSendFet iSendFetion
210
211
212
213
#endif
制作者
1.8.10